//! 系统服务模块
//! 
//! 提供操作系统级别的服务功能，如调度、内存分配、文件系统等

pub mod scheduler;
pub mod allocator;
pub mod fs;
pub mod network;

use crate::utils::error::YayaError;

/// 系统服务管理器
pub struct ServiceManager;

impl ServiceManager {
    /// 初始化所有系统服务
    pub fn init() -> Result<(), YayaError> {
        scheduler::init()?;
        allocator::init()?;
        fs::init()?;
        network::init()?;
        Ok(())
    }
    
    /// 关闭所有系统服务
    pub fn shutdown() -> Result<(), YayaError> {
        network::shutdown()?;
        fs::shutdown()?;
        allocator::shutdown()?;
        scheduler::shutdown()?;
        Ok(())
    }
}